package com.company.service;

import com.company.entity.PageResult;
import com.company.pojo.CheckGroup;
import com.company.pojo.Setmeal;

import java.util.List;

public interface SetMealService {

    /**
     * @date 展示检查组信息  (用于增加套餐时显示检查组)
     */
    List<CheckGroup> findAllFromCheckGroup();

    /**
     * @date  新增套餐
     * @param setmeal  套餐信息
     * @param checkGroupIds 套餐绑定的检查组信息
     */
    void add(Setmeal setmeal, Integer[] checkGroupIds);



    /**
     * @date 分页查询业务查询业务
     * @param currentPage 查询开始的下标
     * @param pageSize    查询每页的大小
     * @param queryString  按照 某一字段查询 ，（详细查询）
     * @return PageResult  分页结果封装对象
     */
    PageResult pageQuery(Integer currentPage, Integer pageSize, String queryString);

    /**
     * @date 删除套餐
     * @param id
     */
    void delete(Integer id);


    /**
     * @date  根据ID查询套餐
     * @param id ID
     * @return com.company.entity.Result
     */
    Setmeal findById(Integer id);

    /**
     * @date  根据ID查询对应套餐绑定的检查组（ID列表）
     * @param id 套餐ID
     * @return com.company.entity.Result
     */
    List<Integer> findCheckGroupIdBySetMeal(Integer id);


    /**
     * @date  套餐修改
     * @param setmeal
     * @param checkgroupIds
     */
    void edit(Setmeal setmeal, Integer[] checkgroupIds);


    /**
     * @date 展示检查组信息  (用于增加套餐时显示检查组)
     */
    List<Setmeal> findAll();
}
